<?php
    if ($_POST) {
    	
		if (isset($_POST['btnComprar'])) {
			header("Location: ./index.php");
		}
		elseif (isset($_POST['btnLimpar'])) {
			header("Location: ./index.php?action=limparcarrinho");
		}
		else {
			$erro 	= false;
	    	$CEP	= "";
			
			$itens	= $this->pedido->getItens();
			
			foreach ($itens as $item) {
				$item->setOpcaoPresente(false);
			}
			
			foreach ($_POST as $chave => $valor) {
				$chaveTratada	= preg_split("/([0-9]+)/", $chave, -1, PREG_SPLIT_DELIM_CAPTURE);
				
				if ($chaveTratada[0] == "strCEP") {
					if ($valor != NULL && $valor != "") {
						$CEP 	.= $valor;
					}
				}
				
				if ($chaveTratada[0] == "strQuantidade") {
					$idProduto	= $chaveTratada[1];
					$quantidade	= $valor;
					
					if ($valor <= 0) {
						$erro 			= true;
						$strMensagem 	= "Quantidade do item " . $this->pedido->getItem($idProduto)->getProduto()->getDescricao() . " inv&aacute;lida.";
						$_SESSION['mensagens']['quantidadeProduto' . $idProduto]	= $strMensagem;
					}
					else {
						if (!$this->pedido->getItem($idProduto)->setQuantidade($quantidade)) {
							$erro 			= true;
							$strMensagem 	= "Quantidade do item " . $this->pedido->getItem($idProduto)->getProduto()->getDescricao() . " acima do estoque atual.";
							$_SESSION['mensagens']['quantidadeProduto' . $idProduto]	= $strMensagem;
						}
					}
				}
				
				if ($chaveTratada[0] == "checkOpcaoPresente") {
					$idProduto 	= $chaveTratada[1];
					
					$this->pedido->getItem($idProduto)->setOpcaoPresente(true);
				}
				
				if ($chaveTratada[0] == "strValePresente") {
					if ($valor != '') {
						if ($this->pedido->setValePresente($valor) == 0) {
							$erro			= true;
							$strMensagem 	= "Cupom / Vale-Presente inv&aacute;lido.";
							$_SESSION['mensagens']['mensagemCupom'] = $strMensagem;
						}
					}
					$this->pedido->setValePresente($valor);
				}
			}
			
			if ($CEP == "" || (strlen($CEP) == 8 && is_numeric($CEP))) {
				$this->pedido->setCEP($CEP);
			}
			else {
				$strMensagem 	= "CEP inv&aacute;lido.";
				$_SESSION['mensagens']['mensagemCEP'] = $strMensagem;
			}
			
			$this->pedido->calculaFrete();
			
			$_SESSION['pedido']	= serialize($this->pedido);
			
			if (isset($_POST['btnAtualizar'])) {
				unset($_POST);
				header("Location: ./index.php?action=vercarrinho");
				die();
			}
			elseif (isset($_POST['btnContinuar'])) {
				if ($erro) {
					header("Location: ./index.php?action=vercarrinho");
				}
				else {
					unset($_SESSION['mensagens']['mensagemCEP']);
					header("Location: ./index.php?action=opcaopresente");
				}
			}
	    }
	}
	else {
		$strMensagem	= "Opera&ccedil;&atilde;o Inv&aacute;lida.";
		$_SESSION['mensagens']['strMensagem']	= $strMensagem;
		
		header("Location: ./index.php");
	}
?>